package org.jeecg.modules.system.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.system.vo.SelectTreeModel;
import org.jeecg.modules.system.entity.SysRegion;
import org.jeecg.modules.system.model.SysRegionTreeModel;

import java.util.List;

public interface ISysRegionService extends IService<SysRegion> {
    /**树节点无子节点状态值*/
    public static final String NOCHILD = "0";
    /**根节点父ID的值*/
    public static final String ROOT_PID_VALUE = "0";
    /**
     * 查询所有数据，无分页
     *
     * @param queryWrapper
     * @return List<YksRegion>
     */
    List<SysRegion> queryTreeListNoPage(QueryWrapper<SysRegion> queryWrapper);

    /**
     * 【vue3专用】根据父级编码加载分类字典的数据
     *
     * @param parentCode
     * @return
     */
    List<SelectTreeModel> queryListByCode(String parentCode);

    /**
     * 【vue3专用】根据pid查询子节点集合
     *
     * @param pid
     * @return
     */
    List<SelectTreeModel> queryListByPid(String pid);
    /**
     * 查询所有部门信息,并分节点进行显示
     * @return
     */
    List<SysRegionTreeModel> queryTreeList();

    /**
     * 查询所有部门信息,并分节点进行显示
     * @param ids 多个部门id
     * @return
     */
    List<SysRegionTreeModel> queryTreeList(String ids);
}
